// Copyright (c) 2025 Huawei Technologies Co., Ltd.
// openUBMC is licensed under Mulan PSL v2.
// You can use this software according to the terms and conditions of the Mulan PSL v2.
// You may obtain a copy of Mulan PSL v2 at:
//         http://license.coscl.org.cn/MulanPSL2
// THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
// EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
// MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
// See the Mulan PSL v2 for more details.
//
 // Description: 提供对char*的拷贝，拼接等便利方法
#pragma once

#include "Defines.hpp"

char* DeepCopyCstr(const char* src);
void DeleteCharArray(char*& str) noexcept;
char* SafeStrCat(const char* str1, const char* str2);
void SafeStringUpdate(char*& upDest, const char* src);
FileType GetFileType(const std::string& filePath);